32746e84c24a2a7b1defff8b2ec609e0b20bdcea,plugins/InspectionGadgets/src/com/siyeh/ig/psiutils/InitializationUtils.java,InitializationUtils,tryStatementAssignsVariableOrFails,#PsiTryStatement#PsiVariable#Set#boolean#,276
Before Change
@NotNull PsiTryStatement tryStatement, PsiVariable variable,
@NotNull Set<MethodSignature> checkedMethods, boolean strict){
final PsiCodeBlock tryBlock = tryStatement.getTryBlock();
if (!blockAssignsVariableOrFails(tryBlock, variable,
checkedMethods, strict)) {
return false;
}
final PsiCodeBlock[] catchBlocks = tryStatement.getCatchBlocks();
After Change
@NotNull Set<MethodSignature> checkedMethods, boolean strict){
final PsiCodeBlock tryBlock = tryStatement.getTryBlock();
boolean initializedInTryAndCatch =
blockAssignsVariableOrFails(tryBlock, variable,
checkedMethods, strict);
final PsiCodeBlock[] catchBlocks = tryStatement.getCatchBlocks();
for(final PsiCodeBlock catchBlock : catchBlocks){
if (strict) {
initializedInTryAndCatch &= blockFails(catchBlock);
} else {
initializedInTryAndCatch &= blockAssignsVariableOrFails(
catchBlock, variable,
checkedMethods, strict);
}
}
if(initializedInTryAndCatch){
return true;
}
final PsiCodeBlock finallyBlock = tryStatement.getFinallyBlock();
return blockAssignsVariableOrFails(finallyBlock, variable,